09. XGBoost




竞赛中的XGBoost

在链接https://github.com/dmlc/xgboost/tree/master/demo#machine-learning-challenge-winning-solutions中,有一系列基于XGBoost的解决方案,在各种竞赛中取得较好成绩。

Estimator

您可以阅读有关Estimator的文档https://sagemaker.readthedocs.io/en/latest/estimators.html,以获取有关此对象的更多信息。从本质上讲,Estimator是一个对象,它指定了有关如何训练模型的一些细节。它使您能够创建和部署模型。

Training

Training用于培训特定的Estimator。
当您要求执行Training时,您需要提供一些设置:

  1. S3上用于存储训练(可能是验证)数据的位置,
  2. S3上将存储结果模型的位置(此数据称为模型工件),
  3. docker容器的位置(当然,如果使用内置算法就是这种情况)
  4. 训练应该使用的计算实例的描述。

一旦提供了所有这些信息,SageMaker将执行必要的实例(CPU或GPU),加载必要的docker容器并执行它,传入训练数据的位置。然后,当容器完成对模型的训练时,模型工件被打包并存储在S3上。
在本文档中https://docs.aws.amazon.com/sagemaker/latest/dg/ex1-train-model-create-training-job.html,您可以看到KMeans Estimator的示例。
这个示例定义了KMeans estimator,并使用 .fit()来训练该模型。稍后,我们将向您展示一个Low-level模型,在low-level中需要指定有关training的更多详细信息。